package cn.jiedanba.cacert.table;

import com.mybatisflex.core.query.QueryColumn;
import com.mybatisflex.core.table.TableDef;

// Auto generate by mybatis-flex, do not modify it.
public class Tables {


    public static final CertRevokeTableDef CERT_REVOKE = new CertRevokeTableDef("tb_cert_revoke");

    public static class CertRevokeTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn CERT_ID = new QueryColumn(this, "cert_id");
        public QueryColumn ROOT_ID = new QueryColumn(this, "root_id");
        public QueryColumn SERIAL_NUMBER = new QueryColumn(this, "serial_number");
        public QueryColumn REVOKE_DATE = new QueryColumn(this, "revoke_date");
        public QueryColumn REASON = new QueryColumn(this, "reason");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");
        public QueryColumn IS_CRL = new QueryColumn(this, "is_crl");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, CERT_ID, ROOT_ID, SERIAL_NUMBER, REVOKE_DATE, REASON, CREATE_DATE, UPDATE_DATE, IS_CRL};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, CERT_ID, ROOT_ID, SERIAL_NUMBER, REVOKE_DATE, REASON, CREATE_DATE, UPDATE_DATE, IS_CRL};


        public CertRevokeTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final RootCaTableDef ROOT_CA = new RootCaTableDef("tb_root_ca");

    public static class RootCaTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn PARENT_ID = new QueryColumn(this, "parent_id");
        public QueryColumn CERT_TYPE = new QueryColumn(this, "cert_type");
        public QueryColumn CERT_NAME = new QueryColumn(this, "cert_name");
        public QueryColumn SERIAL_NUMBER = new QueryColumn(this, "serial_number");
        public QueryColumn SUBJECT_DN = new QueryColumn(this, "subject_dn");
        public QueryColumn SIGN_ALGORITHM = new QueryColumn(this, "sign_algorithm");
        public QueryColumn NOT_BEFORE = new QueryColumn(this, "not_before");
        public QueryColumn NOT_AFTER = new QueryColumn(this, "not_after");
        public QueryColumn KEY_USAGE = new QueryColumn(this, "key_usage");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");
        public QueryColumn PUBLIC_KEY_SIZE = new QueryColumn(this, "public_key_size");
        public QueryColumn PRIVATE_KEY = new QueryColumn(this, "private_key");
        public QueryColumn SIGN_CERT = new QueryColumn(this, "sign_cert");
        public QueryColumn STATUS = new QueryColumn(this, "status");
        public QueryColumn OCSP = new QueryColumn(this, "ocsp");
        public QueryColumn CRL = new QueryColumn(this, "crl");
        public QueryColumn CRT = new QueryColumn(this, "crt");
        public QueryColumn ALGORITHM = new QueryColumn(this, "algorithm");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, PARENT_ID, CERT_TYPE, CERT_NAME, SERIAL_NUMBER, SUBJECT_DN, SIGN_ALGORITHM, NOT_BEFORE, NOT_AFTER, KEY_USAGE, CREATE_DATE, UPDATE_DATE, PUBLIC_KEY_SIZE, PRIVATE_KEY, SIGN_CERT, STATUS, OCSP, CRL, CRT, ALGORITHM};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, PARENT_ID, CERT_TYPE, CERT_NAME, SERIAL_NUMBER, SUBJECT_DN, SIGN_ALGORITHM, NOT_BEFORE, NOT_AFTER, KEY_USAGE, CREATE_DATE, UPDATE_DATE, PUBLIC_KEY_SIZE, PRIVATE_KEY, SIGN_CERT, STATUS, OCSP, CRL, CRT, ALGORITHM};


        public RootCaTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final SysCertTableDef SYS_CERT = new SysCertTableDef("tb_sys_cert");

    public static class SysCertTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn ROOT_ID = new QueryColumn(this, "root_id");
        public QueryColumn CERT_NAME = new QueryColumn(this, "cert_name");
        public QueryColumn CERT_TYPE = new QueryColumn(this, "cert_type");
        public QueryColumn SERIAL_NUMBER = new QueryColumn(this, "serial_number");
        public QueryColumn SUBJECT_DN = new QueryColumn(this, "subject_dn");
        public QueryColumn SIGN_CERT = new QueryColumn(this, "sign_cert");
        public QueryColumn PRIVATE_KEY = new QueryColumn(this, "private_key");
        public QueryColumn SIG_ALG_OID = new QueryColumn(this, "sig_alg_oid");
        public QueryColumn SIG_ALG_NAME = new QueryColumn(this, "sig_alg_name");
        public QueryColumn PUBLIC_KEY_SIZE = new QueryColumn(this, "public_key_size");
        public QueryColumn NOT_BEFORE = new QueryColumn(this, "not_before");
        public QueryColumn NOT_AFTER = new QueryColumn(this, "not_after");
        public QueryColumn REVOKE_DATE = new QueryColumn(this, "revoke_date");
        public QueryColumn STATUS = new QueryColumn(this, "status");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, ROOT_ID, CERT_NAME, CERT_TYPE, SERIAL_NUMBER, SUBJECT_DN, SIGN_CERT, PRIVATE_KEY, SIG_ALG_OID, SIG_ALG_NAME, PUBLIC_KEY_SIZE, NOT_BEFORE, NOT_AFTER, REVOKE_DATE, STATUS, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, ROOT_ID, CERT_NAME, CERT_TYPE, SERIAL_NUMBER, SUBJECT_DN, SIGN_CERT, PRIVATE_KEY, SIG_ALG_OID, SIG_ALG_NAME, PUBLIC_KEY_SIZE, NOT_BEFORE, NOT_AFTER, REVOKE_DATE, STATUS, CREATE_DATE, UPDATE_DATE};


        public SysCertTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final RootCrlTableDef ROOT_CRL = new RootCrlTableDef("tb_root_crl");

    public static class RootCrlTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn ROOT_ID = new QueryColumn(this, "root_id");
        public QueryColumn CERT_NAME = new QueryColumn(this, "cert_name");
        public QueryColumn START_DATE = new QueryColumn(this, "start_date");
        public QueryColumn NEXT_UPDATE_DATE = new QueryColumn(this, "next_update_date");
        public QueryColumn SIGN_ALGORITHM = new QueryColumn(this, "sign_algorithm");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");
        public QueryColumn CRL_FILE = new QueryColumn(this, "crl_file");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, ROOT_ID, CERT_NAME, START_DATE, NEXT_UPDATE_DATE, SIGN_ALGORITHM, CREATE_DATE, UPDATE_DATE, CRL_FILE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, ROOT_ID, CERT_NAME, START_DATE, NEXT_UPDATE_DATE, SIGN_ALGORITHM, CREATE_DATE, UPDATE_DATE, CRL_FILE};


        public RootCrlTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final RootRevokeTableDef ROOT_REVOKE = new RootRevokeTableDef("tb_root_revoke");

    public static class RootRevokeTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn ROOT_ID = new QueryColumn(this, "root_id");
        public QueryColumn SERIAL_NUMBER = new QueryColumn(this, "serial_number");
        public QueryColumn REVOKE_DATE = new QueryColumn(this, "revoke_date");
        public QueryColumn REASON = new QueryColumn(this, "reason");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");
        public QueryColumn IS_CRL = new QueryColumn(this, "is_crl");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, ROOT_ID, SERIAL_NUMBER, REVOKE_DATE, REASON, CREATE_DATE, UPDATE_DATE, IS_CRL};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, ROOT_ID, SERIAL_NUMBER, REVOKE_DATE, REASON, CREATE_DATE, UPDATE_DATE, IS_CRL};


        public RootRevokeTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final SysUserTableDef SYS_USER = new SysUserTableDef("tb_sys_user");

    public static class SysUserTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn LOGIN_NAME = new QueryColumn(this, "login_name");
        public QueryColumn USER_NAME = new QueryColumn(this, "user_name");
        public QueryColumn PASSWORD = new QueryColumn(this, "password");
        public QueryColumn DEL_FLAG = new QueryColumn(this, "del_flag");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, LOGIN_NAME, USER_NAME, PASSWORD, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, LOGIN_NAME, USER_NAME, PASSWORD, DEL_FLAG, CREATE_DATE, UPDATE_DATE};


        public SysUserTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final CertTableDef CERT = new CertTableDef("tb_cert");

    public static class CertTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn ROOT_ID = new QueryColumn(this, "root_id");
        public QueryColumn PARENT_ID = new QueryColumn(this, "parent_id");
        public QueryColumn TEMPLATE_ID = new QueryColumn(this, "template_id");
        public QueryColumn CERT_NAME = new QueryColumn(this, "cert_name");
        public QueryColumn CERT_TYPE = new QueryColumn(this, "cert_type");
        public QueryColumn SERIAL_NUMBER = new QueryColumn(this, "serial_number");
        public QueryColumn SUBJECT_DN = new QueryColumn(this, "subject_dn");
        public QueryColumn SIG_ALG_NAME = new QueryColumn(this, "sig_alg_name");
        public QueryColumn SIG_ALG_OID = new QueryColumn(this, "sig_alg_oid");
        public QueryColumn PUBLIC_KEY_SIZE = new QueryColumn(this, "public_key_size");
        public QueryColumn NOT_BEFORE = new QueryColumn(this, "not_before");
        public QueryColumn NOT_AFTER = new QueryColumn(this, "not_after");
        public QueryColumn REVOKE_DATE = new QueryColumn(this, "revoke_date");
        public QueryColumn STATUS = new QueryColumn(this, "status");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, ROOT_ID, PARENT_ID, TEMPLATE_ID, CERT_NAME, CERT_TYPE, SERIAL_NUMBER, SUBJECT_DN, SIG_ALG_NAME, SIG_ALG_OID, PUBLIC_KEY_SIZE, NOT_BEFORE, NOT_AFTER, REVOKE_DATE, STATUS, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, ROOT_ID, PARENT_ID, TEMPLATE_ID, CERT_NAME, CERT_TYPE, SERIAL_NUMBER, SUBJECT_DN, SIG_ALG_NAME, SIG_ALG_OID, PUBLIC_KEY_SIZE, NOT_BEFORE, NOT_AFTER, REVOKE_DATE, STATUS, CREATE_DATE, UPDATE_DATE};


        public CertTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final KeyUsageTableDef KEY_USAGE = new KeyUsageTableDef("tb_key_usage");

    public static class KeyUsageTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn USAGE_NAME = new QueryColumn(this, "usage_name");
        public QueryColumn USAGE_VALUE = new QueryColumn(this, "usage_value");
        public QueryColumn ENHANCE = new QueryColumn(this, "enhance");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, USAGE_NAME, USAGE_VALUE, ENHANCE, CREATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, USAGE_NAME, USAGE_VALUE, ENHANCE, CREATE_DATE};


        public KeyUsageTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final CertCustomExtensionTableDef CERT_CUSTOM_EXTENSION = new CertCustomExtensionTableDef("tb_cert_custom_extension");

    public static class CertCustomExtensionTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn TEMPLATE_ID = new QueryColumn(this, "template_id");
        public QueryColumn VALUE = new QueryColumn(this, "value");
        public QueryColumn OID = new QueryColumn(this, "oid");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, TEMPLATE_ID, VALUE, OID, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, TEMPLATE_ID, VALUE, OID, CREATE_DATE, UPDATE_DATE};


        public CertCustomExtensionTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final CertFileTableDef CERT_FILE = new CertFileTableDef("tb_cert_file");

    public static class CertFileTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn CERT_ID = new QueryColumn(this, "cert_id");
        public QueryColumn SIGN_CERT = new QueryColumn(this, "sign_cert");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, CERT_ID, SIGN_CERT, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, CERT_ID, SIGN_CERT, CREATE_DATE, UPDATE_DATE};


        public CertFileTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final CertTemplateTableDef CERT_TEMPLATE = new CertTemplateTableDef("tb_cert_template");

    public static class CertTemplateTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn ROOT_ID = new QueryColumn(this, "root_id");
        public QueryColumn NAME = new QueryColumn(this, "name");
        public QueryColumn KEY_USAGE = new QueryColumn(this, "key_usage");
        public QueryColumn EXTEND_USAGE = new QueryColumn(this, "extend_usage");
        public QueryColumn ALGORITHM = new QueryColumn(this, "algorithm");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");
        public QueryColumn SIGNATURE_ALGORITHM = new QueryColumn(this, "signature_algorithm");
        public QueryColumn OCSP = new QueryColumn(this, "ocsp");
        public QueryColumn CRL = new QueryColumn(this, "crl");
        public QueryColumn CRT = new QueryColumn(this, "crt");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, ROOT_ID, NAME, KEY_USAGE, EXTEND_USAGE, ALGORITHM, CREATE_DATE, UPDATE_DATE, SIGNATURE_ALGORITHM, OCSP, CRL, CRT};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, ROOT_ID, NAME, KEY_USAGE, EXTEND_USAGE, ALGORITHM, CREATE_DATE, UPDATE_DATE, SIGNATURE_ALGORITHM, OCSP, CRL, CRT};


        public CertTemplateTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final RootCaPolicyTableDef ROOT_CA_POLICY = new RootCaPolicyTableDef("tb_root_ca_policy");

    public static class RootCaPolicyTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn CERT_ID = new QueryColumn(this, "cert_id");
        public QueryColumn POLICY_VALUE = new QueryColumn(this, "policy_value");
        public QueryColumn POLICY_OID = new QueryColumn(this, "policy_oid");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, CERT_ID, POLICY_VALUE, POLICY_OID, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, CERT_ID, POLICY_VALUE, POLICY_OID, CREATE_DATE, UPDATE_DATE};


        public RootCaPolicyTableDef(String tableName) {
            super(tableName);
        }
    }


    public static final CertPolicyTableDef CERT_POLICY = new CertPolicyTableDef("tb_cert_policy");

    public static class CertPolicyTableDef extends TableDef {

        public QueryColumn ID = new QueryColumn(this, "id");
        public QueryColumn TEMPLATE_ID = new QueryColumn(this, "template_id");
        public QueryColumn POLICY_VALUE = new QueryColumn(this, "policy_value");
        public QueryColumn POLICY_OID = new QueryColumn(this, "policy_oid");
        public QueryColumn CREATE_DATE = new QueryColumn(this, "create_date");
        public QueryColumn UPDATE_DATE = new QueryColumn(this, "update_date");

        public QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, TEMPLATE_ID, POLICY_VALUE, POLICY_OID, CREATE_DATE, UPDATE_DATE};
        public QueryColumn[] ALL_COLUMNS = new QueryColumn[]{ID, TEMPLATE_ID, POLICY_VALUE, POLICY_OID, CREATE_DATE, UPDATE_DATE};


        public CertPolicyTableDef(String tableName) {
            super(tableName);
        }
    }
}
